package com.trade.module.base.service;

import com.trade.module.base.entity.User;
import com.trade.module.base.vo.UserVo;

/**
 * Class Description:用户操作服务层接口
 *
 * @Version v1.0 2017/4/22 0:09
 * @JDK version 1.8.0_51
 * @Author zfb
 */
public interface UserService {
    /**
     * 根据用户名和用户状态查询用户信息
     *
     * @param account 用户名
     * @param userFlag 用户状态
     * @param dataFlag 数据状态
     * @return User 用户信息
     */
    User findByAccountAndUserFlagAndDataFlag(String account, String userFlag, String dataFlag);

    /**
     * 新增用户
     *
     * @param userVo 用户对象
     * @return user对象
     */
    User save(UserVo userVo);

    /**
     * 根据id获取用户详情
     *
     * @param userId 当前用户id
     * @return UserVo
     */
    UserVo findById(String userId);

    /**
     * 保存用户信息
     *
     * @param user 用户对象
     * @return user 用户对象
     */
    User saveInfo(User user);

    /**
     * 修改用户密码
     *
     * @param userVo 用户vo
     * @return boolean
     */
    boolean updatePassWord(UserVo userVo);
}
